﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;

namespace Infinity.Types
{
	public interface IRange<T> : IEnumerable<T>, IEnumerable
		where T : struct, IComparable<T>
	{
		T Start { get; }
		Nullable<T> End { get; }

		T Next(T value);

		bool IsElementOf(T value);
	}
}